1. Field of the Invention
The present invention relates to the design of networks. More specifically, the present invention relates to a method and system for improving network and system utilization in a non-uniform network.
2. Related Art
The proliferation of mobile computing and communication devices is driving revolutionary changes in our society. As we transition from a personal computing age into a ubiquitous computing age, one can use, at the same time, several electronic devices to access information whenever and wherever the information is needed.
Mobile computing devices are typically designed to run specific types of applications. For example, mobile users can use cell phones to check e-mail and news. Travelers can surf the Internet with portable computers at airports, railway stations, and coffee shops. Tourists can use Internet-enabled Global Positioning System (GPS) in rental cars to locate attractions. Researchers can synchronize data and transfer files between their personal digital assistants (PDAs) and their office or home computers. Moreover, these computing and communication devices can have very different characteristics.
As a result, today's networks, both fixed and ad-hoc, have never been more dynamic and heterogeneous. Network nodes can frequently join, leave, or move within a network, causing the network topology to change constantly. Nodes may also have drastically different characteristics such as processing power, memory capacity, signal-detection strength, battery power, transmission range, etc. In addition, each node can have traffic-specific requirements for transmission power, bandwidth, or latency. For instance, a hand-held mobile device often requires low-latency for instant messaging or voice communications, but may not need large bandwidth. In contrast, a portable computer used for Internet browsing or media streaming may not be sensitive to latency but may require a high-bandwidth link.
To accommodate such dynamic network environments, researchers have proposed several ad-hoc routing schemes. Most ad-hoc routing schemes allow a mobile node to forward packets generated by other nodes. Hence, any ad-hoc node can function as a router.
However, the flexibility of ad-hoc routing comes with the inevitable inefficiency. An ad-hoc node typically has little knowledge of its next-hop neighbor (or neighbor's neighbor), except for the neighbor's Internet Protocol (IP) address and its ability to forward packets. Consequently, a node can “blindly” rely on a neighbor node which is not suitable for forwarding packets for a specific application. For example, a portable computer attempting to stream a high-resolution video clip via a nearby mobile phone can jam the phone and frustrate the user. Furthermore, the network utilization can suffer when a large amount of such unsuccessful forwarding is present.
Note that, in a wireless network, a node's neighbor is typically defined as another node within the transmission range. In a fixed network, a node's neighbor refers to any node that can receive the node's local link broadcast. Thus, the neighbor of a node's neighbor may not be reachable from the sender node, but certain conventional routing schemes allow the node to learn the number of hops and IP address of a neighbor's neighbor. Such knowledge may require flooding in the network, which is not ideal in an ad-hoc network in terms of energy consumption and network traffic. Alternatively, controlled flooding can be used for facilitating knowledge of the neighbor of a node's neighbor.
Hence, what is needed is a method that can improve the utilization of a dynamic, heterogeneous network while retaining the flexibility of ad-hoc routing.